/**
 * 
 */
package com.zxc.redis.RSet;

import java.util.Arrays;

import org.redisson.Redisson;
import org.redisson.api.RSortedSet;
import org.redisson.api.RedissonClient;
import org.redisson.config.Config;

import com.zxc.redis.AnyObject;

/**
 * @author Administrator
 *
 */
public class RSortedSetDemo {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Config config = new Config();
		config
			//.setCodec(new FstCodec())
			.useSingleServer() //单例模式
			.setAddress("192.168.1.122:6379")//连接地址
			.setDatabase(1) // 数据库索引位置
			.setPassword("shijie99test") // 密码
			.setClientName("channelbatch") // 客户端名称
			;
		RedissonClient redisson = Redisson.create(config);
		
		RSortedSet<Integer> set = redisson.getSortedSet("anySortSet");
		set.delete();
		set.add(1);
		set.add(4);
		set.add(3);
		set.add(2);
		System.out.println("获取RSortedSet集合内所有的元素："+set.toString());
		
		System.out.println("取出集合的第一个元素："+set.first());
		System.out.println("取出集合的最后一个元素："+set.last());
		System.out.println("获取RSortedSet集合内所有的元素："+set.toString());
		
		// 自定义类的有序集合，元素类必须实现java.lang.Comparable接口
		RSortedSet<AnyObject> set1 = redisson.getSortedSet("anySortSet1");
		set1.delete();
		set1.add(new AnyObject(1));
		set1.add(new AnyObject(4));
		set1.add(new AnyObject(3));
		set1.add(new AnyObject(2));
		System.out.println("获取RSortedSet集合内所有的元素："+Arrays.asList(set.toArray()));
		
		redisson.shutdown();

	}

}
